The present invention relates to the field of user interfaces for computer programs and operating systems. Many computer programs and operating systems display items or data associated with a sequence or hierarchy. An arrangement of data or items is referred to as sparse if there is no data or items for at least a portion of the arrangement of data. For example, if a timeline includes data or items at time 0 and time 100, but no data or items at the intervening times, then this arrangement of data may be referred to as sparse.
Displaying and manipulating sparse arrangements of data is a challenge for user interfaces. Typically, user interfaces attempt to present users with a clear view of the overall arrangement of data and of the data values of each item. However, these two goals can contradict each other for sparse arrangements of data. Presenting a clear view of the overall arrangement of data often requires displaying large amounts of empty space, which represents the portions of the arrangement not associated with items or data. However, this leaves very little display area for presenting the data values. Furthermore, users may have to navigate through large areas of empty space to reach items or data.